﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000D6D RID: 3437
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class PropExtraInfo : IMessage<PropExtraInfo>, IMessage, IEquatable<PropExtraInfo>, IDeepCloneable<PropExtraInfo>, IBufferMessage
	{
		// Token: 0x17002B96 RID: 11158
		// (get) Token: 0x06009A36 RID: 39478 RVA: 0x0019BC9F File Offset: 0x00199E9F
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<PropExtraInfo> Parser
		{
			get
			{
				return PropExtraInfo._parser;
			}
		}

		// Token: 0x17002B97 RID: 11159
		// (get) Token: 0x06009A37 RID: 39479 RVA: 0x0019BCA6 File Offset: 0x00199EA6
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return PropExtraInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17002B98 RID: 11160
		// (get) Token: 0x06009A38 RID: 39480 RVA: 0x0019BCB8 File Offset: 0x00199EB8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return PropExtraInfo.Descriptor;
			}
		}

		// Token: 0x06009A39 RID: 39481 RVA: 0x0019BCBF File Offset: 0x00199EBF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PropExtraInfo()
		{
		}

		// Token: 0x06009A3A RID: 39482 RVA: 0x0019BCC8 File Offset: 0x00199EC8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PropExtraInfo(PropExtraInfo other) : this()
		{
			this.rogueInfo_ = ((other.rogueInfo_ != null) ? other.rogueInfo_.Clone() : null);
			this.aeonInfo_ = ((other.aeonInfo_ != null) ? other.aeonInfo_.Clone() : null);
			this.chessRogueInfo_ = ((other.chessRogueInfo_ != null) ? other.chessRogueInfo_.Clone() : null);
			this.rogueTournDoorInfo_ = ((other.rogueTournDoorInfo_ != null) ? other.rogueTournDoorInfo_.Clone() : null);
			this.rogueTournWorkbenchInfo_ = ((other.rogueTournWorkbenchInfo_ != null) ? other.rogueTournWorkbenchInfo_.Clone() : null);
			this.rogueGambleMachineInfo_ = ((other.rogueGambleMachineInfo_ != null) ? other.rogueGambleMachineInfo_.Clone() : null);
			this.rogueCurseChestInfo_ = ((other.rogueCurseChestInfo_ != null) ? other.rogueCurseChestInfo_.Clone() : null);
			this.rogueMagicDoorInfo_ = ((other.rogueMagicDoorInfo_ != null) ? other.rogueMagicDoorInfo_.Clone() : null);
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x06009A3B RID: 39483 RVA: 0x0019BDCC File Offset: 0x00199FCC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PropExtraInfo Clone()
		{
			return new PropExtraInfo(this);
		}

		// Token: 0x17002B99 RID: 11161
		// (get) Token: 0x06009A3C RID: 39484 RVA: 0x0019BDD4 File Offset: 0x00199FD4
		// (set) Token: 0x06009A3D RID: 39485 RVA: 0x0019BDDC File Offset: 0x00199FDC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PropRogueInfo RogueInfo
		{
			get
			{
				return this.rogueInfo_;
			}
			set
			{
				this.rogueInfo_ = value;
			}
		}

		// Token: 0x17002B9A RID: 11162
		// (get) Token: 0x06009A3E RID: 39486 RVA: 0x0019BDE5 File Offset: 0x00199FE5
		// (set) Token: 0x06009A3F RID: 39487 RVA: 0x0019BDED File Offset: 0x00199FED
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PropAeonInfo AeonInfo
		{
			get
			{
				return this.aeonInfo_;
			}
			set
			{
				this.aeonInfo_ = value;
			}
		}

		// Token: 0x17002B9B RID: 11163
		// (get) Token: 0x06009A40 RID: 39488 RVA: 0x0019BDF6 File Offset: 0x00199FF6
		// (set) Token: 0x06009A41 RID: 39489 RVA: 0x0019BDFE File Offset: 0x00199FFE
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PropChessRogueInfo ChessRogueInfo
		{
			get
			{
				return this.chessRogueInfo_;
			}
			set
			{
				this.chessRogueInfo_ = value;
			}
		}

		// Token: 0x17002B9C RID: 11164
		// (get) Token: 0x06009A42 RID: 39490 RVA: 0x0019BE07 File Offset: 0x0019A007
		// (set) Token: 0x06009A43 RID: 39491 RVA: 0x0019BE0F File Offset: 0x0019A00F
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueTournDoorInfo RogueTournDoorInfo
		{
			get
			{
				return this.rogueTournDoorInfo_;
			}
			set
			{
				this.rogueTournDoorInfo_ = value;
			}
		}

		// Token: 0x17002B9D RID: 11165
		// (get) Token: 0x06009A44 RID: 39492 RVA: 0x0019BE18 File Offset: 0x0019A018
		// (set) Token: 0x06009A45 RID: 39493 RVA: 0x0019BE20 File Offset: 0x0019A020
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueTournWorkbenchInfo RogueTournWorkbenchInfo
		{
			get
			{
				return this.rogueTournWorkbenchInfo_;
			}
			set
			{
				this.rogueTournWorkbenchInfo_ = value;
			}
		}

		// Token: 0x17002B9E RID: 11166
		// (get) Token: 0x06009A46 RID: 39494 RVA: 0x0019BE29 File Offset: 0x0019A029
		// (set) Token: 0x06009A47 RID: 39495 RVA: 0x0019BE31 File Offset: 0x0019A031
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueGambleMachineInfo RogueGambleMachineInfo
		{
			get
			{
				return this.rogueGambleMachineInfo_;
			}
			set
			{
				this.rogueGambleMachineInfo_ = value;
			}
		}

		// Token: 0x17002B9F RID: 11167
		// (get) Token: 0x06009A48 RID: 39496 RVA: 0x0019BE3A File Offset: 0x0019A03A
		// (set) Token: 0x06009A49 RID: 39497 RVA: 0x0019BE42 File Offset: 0x0019A042
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueCurseChestInfo RogueCurseChestInfo
		{
			get
			{
				return this.rogueCurseChestInfo_;
			}
			set
			{
				this.rogueCurseChestInfo_ = value;
			}
		}

		// Token: 0x17002BA0 RID: 11168
		// (get) Token: 0x06009A4A RID: 39498 RVA: 0x0019BE4B File Offset: 0x0019A04B
		// (set) Token: 0x06009A4B RID: 39499 RVA: 0x0019BE53 File Offset: 0x0019A053
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMagicDoorInfo RogueMagicDoorInfo
		{
			get
			{
				return this.rogueMagicDoorInfo_;
			}
			set
			{
				this.rogueMagicDoorInfo_ = value;
			}
		}

		// Token: 0x06009A4C RID: 39500 RVA: 0x0019BE5C File Offset: 0x0019A05C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as PropExtraInfo);
		}

		// Token: 0x06009A4D RID: 39501 RVA: 0x0019BE6C File Offset: 0x0019A06C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(PropExtraInfo other)
		{
			return other != null && (other == this || (object.Equals(this.RogueInfo, other.RogueInfo) && object.Equals(this.AeonInfo, other.AeonInfo) && object.Equals(this.ChessRogueInfo, other.ChessRogueInfo) && object.Equals(this.RogueTournDoorInfo, other.RogueTournDoorInfo) && object.Equals(this.RogueTournWorkbenchInfo, other.RogueTournWorkbenchInfo) && object.Equals(this.RogueGambleMachineInfo, other.RogueGambleMachineInfo) && object.Equals(this.RogueCurseChestInfo, other.RogueCurseChestInfo) && object.Equals(this.RogueMagicDoorInfo, other.RogueMagicDoorInfo) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06009A4E RID: 39502 RVA: 0x0019BF40 File Offset: 0x0019A140
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.rogueInfo_ != null)
			{
				num ^= this.RogueInfo.GetHashCode();
			}
			if (this.aeonInfo_ != null)
			{
				num ^= this.AeonInfo.GetHashCode();
			}
			if (this.chessRogueInfo_ != null)
			{
				num ^= this.ChessRogueInfo.GetHashCode();
			}
			if (this.rogueTournDoorInfo_ != null)
			{
				num ^= this.RogueTournDoorInfo.GetHashCode();
			}
			if (this.rogueTournWorkbenchInfo_ != null)
			{
				num ^= this.RogueTournWorkbenchInfo.GetHashCode();
			}
			if (this.rogueGambleMachineInfo_ != null)
			{
				num ^= this.RogueGambleMachineInfo.GetHashCode();
			}
			if (this.rogueCurseChestInfo_ != null)
			{
				num ^= this.RogueCurseChestInfo.GetHashCode();
			}
			if (this.rogueMagicDoorInfo_ != null)
			{
				num ^= this.RogueMagicDoorInfo.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x06009A4F RID: 39503 RVA: 0x0019C016 File Offset: 0x0019A216
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06009A50 RID: 39504 RVA: 0x0019C01E File Offset: 0x0019A21E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06009A51 RID: 39505 RVA: 0x0019C028 File Offset: 0x0019A228
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.rogueInfo_ != null)
			{
				output.WriteRawTag(10);
				output.WriteMessage(this.RogueInfo);
			}
			if (this.aeonInfo_ != null)
			{
				output.WriteRawTag(18);
				output.WriteMessage(this.AeonInfo);
			}
			if (this.rogueTournWorkbenchInfo_ != null)
			{
				output.WriteRawTag(26);
				output.WriteMessage(this.RogueTournWorkbenchInfo);
			}
			if (this.rogueGambleMachineInfo_ != null)
			{
				output.WriteRawTag(34);
				output.WriteMessage(this.RogueGambleMachineInfo);
			}
			if (this.rogueCurseChestInfo_ != null)
			{
				output.WriteRawTag(58);
				output.WriteMessage(this.RogueCurseChestInfo);
			}
			if (this.rogueMagicDoorInfo_ != null)
			{
				output.WriteRawTag(66);
				output.WriteMessage(this.RogueMagicDoorInfo);
			}
			if (this.rogueTournDoorInfo_ != null)
			{
				output.WriteRawTag(106);
				output.WriteMessage(this.RogueTournDoorInfo);
			}
			if (this.chessRogueInfo_ != null)
			{
				output.WriteRawTag(114);
				output.WriteMessage(this.ChessRogueInfo);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x06009A52 RID: 39506 RVA: 0x0019C12C File Offset: 0x0019A32C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.rogueInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.RogueInfo);
			}
			if (this.aeonInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.AeonInfo);
			}
			if (this.chessRogueInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.ChessRogueInfo);
			}
			if (this.rogueTournDoorInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.RogueTournDoorInfo);
			}
			if (this.rogueTournWorkbenchInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.RogueTournWorkbenchInfo);
			}
			if (this.rogueGambleMachineInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.RogueGambleMachineInfo);
			}
			if (this.rogueCurseChestInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.RogueCurseChestInfo);
			}
			if (this.rogueMagicDoorInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.RogueMagicDoorInfo);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x06009A53 RID: 39507 RVA: 0x0019C214 File Offset: 0x0019A414
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(PropExtraInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.rogueInfo_ != null)
			{
				if (this.rogueInfo_ == null)
				{
					this.RogueInfo = new PropRogueInfo();
				}
				this.RogueInfo.MergeFrom(other.RogueInfo);
			}
			if (other.aeonInfo_ != null)
			{
				if (this.aeonInfo_ == null)
				{
					this.AeonInfo = new PropAeonInfo();
				}
				this.AeonInfo.MergeFrom(other.AeonInfo);
			}
			if (other.chessRogueInfo_ != null)
			{
				if (this.chessRogueInfo_ == null)
				{
					this.ChessRogueInfo = new PropChessRogueInfo();
				}
				this.ChessRogueInfo.MergeFrom(other.ChessRogueInfo);
			}
			if (other.rogueTournDoorInfo_ != null)
			{
				if (this.rogueTournDoorInfo_ == null)
				{
					this.RogueTournDoorInfo = new RogueTournDoorInfo();
				}
				this.RogueTournDoorInfo.MergeFrom(other.RogueTournDoorInfo);
			}
			if (other.rogueTournWorkbenchInfo_ != null)
			{
				if (this.rogueTournWorkbenchInfo_ == null)
				{
					this.RogueTournWorkbenchInfo = new RogueTournWorkbenchInfo();
				}
				this.RogueTournWorkbenchInfo.MergeFrom(other.RogueTournWorkbenchInfo);
			}
			if (other.rogueGambleMachineInfo_ != null)
			{
				if (this.rogueGambleMachineInfo_ == null)
				{
					this.RogueGambleMachineInfo = new RogueGambleMachineInfo();
				}
				this.RogueGambleMachineInfo.MergeFrom(other.RogueGambleMachineInfo);
			}
			if (other.rogueCurseChestInfo_ != null)
			{
				if (this.rogueCurseChestInfo_ == null)
				{
					this.RogueCurseChestInfo = new RogueCurseChestInfo();
				}
				this.RogueCurseChestInfo.MergeFrom(other.RogueCurseChestInfo);
			}
			if (other.rogueMagicDoorInfo_ != null)
			{
				if (this.rogueMagicDoorInfo_ == null)
				{
					this.RogueMagicDoorInfo = new RogueMagicDoorInfo();
				}
				this.RogueMagicDoorInfo.MergeFrom(other.RogueMagicDoorInfo);
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x06009A54 RID: 39508 RVA: 0x0019C39C File Offset: 0x0019A59C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x06009A55 RID: 39509 RVA: 0x0019C3A8 File Offset: 0x0019A5A8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 34U)
				{
					if (num <= 18U)
					{
						if (num == 10U)
						{
							if (this.rogueInfo_ == null)
							{
								this.RogueInfo = new PropRogueInfo();
							}
							input.ReadMessage(this.RogueInfo);
							continue;
						}
						if (num == 18U)
						{
							if (this.aeonInfo_ == null)
							{
								this.AeonInfo = new PropAeonInfo();
							}
							input.ReadMessage(this.AeonInfo);
							continue;
						}
					}
					else
					{
						if (num == 26U)
						{
							if (this.rogueTournWorkbenchInfo_ == null)
							{
								this.RogueTournWorkbenchInfo = new RogueTournWorkbenchInfo();
							}
							input.ReadMessage(this.RogueTournWorkbenchInfo);
							continue;
						}
						if (num == 34U)
						{
							if (this.rogueGambleMachineInfo_ == null)
							{
								this.RogueGambleMachineInfo = new RogueGambleMachineInfo();
							}
							input.ReadMessage(this.RogueGambleMachineInfo);
							continue;
						}
					}
				}
				else if (num <= 66U)
				{
					if (num == 58U)
					{
						if (this.rogueCurseChestInfo_ == null)
						{
							this.RogueCurseChestInfo = new RogueCurseChestInfo();
						}
						input.ReadMessage(this.RogueCurseChestInfo);
						continue;
					}
					if (num == 66U)
					{
						if (this.rogueMagicDoorInfo_ == null)
						{
							this.RogueMagicDoorInfo = new RogueMagicDoorInfo();
						}
						input.ReadMessage(this.RogueMagicDoorInfo);
						continue;
					}
				}
				else
				{
					if (num == 106U)
					{
						if (this.rogueTournDoorInfo_ == null)
						{
							this.RogueTournDoorInfo = new RogueTournDoorInfo();
						}
						input.ReadMessage(this.RogueTournDoorInfo);
						continue;
					}
					if (num == 114U)
					{
						if (this.chessRogueInfo_ == null)
						{
							this.ChessRogueInfo = new PropChessRogueInfo();
						}
						input.ReadMessage(this.ChessRogueInfo);
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x04003B59 RID: 15193
		private static readonly MessageParser<PropExtraInfo> _parser = new MessageParser<PropExtraInfo>(() => new PropExtraInfo());

		// Token: 0x04003B5A RID: 15194
		private UnknownFieldSet _unknownFields;

		// Token: 0x04003B5B RID: 15195
		public const int RogueInfoFieldNumber = 1;

		// Token: 0x04003B5C RID: 15196
		private PropRogueInfo rogueInfo_;

		// Token: 0x04003B5D RID: 15197
		public const int AeonInfoFieldNumber = 2;

		// Token: 0x04003B5E RID: 15198
		private PropAeonInfo aeonInfo_;

		// Token: 0x04003B5F RID: 15199
		public const int ChessRogueInfoFieldNumber = 14;

		// Token: 0x04003B60 RID: 15200
		private PropChessRogueInfo chessRogueInfo_;

		// Token: 0x04003B61 RID: 15201
		public const int RogueTournDoorInfoFieldNumber = 13;

		// Token: 0x04003B62 RID: 15202
		private RogueTournDoorInfo rogueTournDoorInfo_;

		// Token: 0x04003B63 RID: 15203
		public const int RogueTournWorkbenchInfoFieldNumber = 3;

		// Token: 0x04003B64 RID: 15204
		private RogueTournWorkbenchInfo rogueTournWorkbenchInfo_;

		// Token: 0x04003B65 RID: 15205
		public const int RogueGambleMachineInfoFieldNumber = 4;

		// Token: 0x04003B66 RID: 15206
		private RogueGambleMachineInfo rogueGambleMachineInfo_;

		// Token: 0x04003B67 RID: 15207
		public const int RogueCurseChestInfoFieldNumber = 7;

		// Token: 0x04003B68 RID: 15208
		private RogueCurseChestInfo rogueCurseChestInfo_;

		// Token: 0x04003B69 RID: 15209
		public const int RogueMagicDoorInfoFieldNumber = 8;

		// Token: 0x04003B6A RID: 15210
		private RogueMagicDoorInfo rogueMagicDoorInfo_;
	}
}
